]> dgit.raspbian.org Git - gnome-shell.git/commit
cleanup: Use inheritance for Actor classes instead of composition
authorMarco Trevisan (Treviño) <mail@3v1n0.net>
Tue, 16 Jul 2019 09:24:13 +0000 (11:24 +0200)
committerFlorian Müllner <florian.muellner@gmail.com>
Wed, 16 Oct 2019 15:26:13 +0000 (15:26 +0000)
commitc4c5c4fd5ce1509fc0a60a77f0017337209e611c
treec3f735016064bd37b7e2332030970faa139a498b
parentf67b409fc11a8f60de98fdf733e66439b8d76412
cleanup: Use inheritance for Actor classes instead of composition

Remove the `this.actor = ...` and `this.actor._delegate = this` patterns in most
of classes, by inheriting all the actor container classes.

Uses interfaces when needed for making sure that multiple classes will implement
some required methods or to avoid redefining the same code multiple times.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/559
58 files changed:
js/gdm/authPrompt.js
js/gdm/loginDialog.js
js/ui/accessDialog.js
js/ui/altTab.js
js/ui/animation.js
js/ui/appDisplay.js
js/ui/background.js
js/ui/calendar.js
js/ui/checkBox.js
js/ui/components/keyring.js
js/ui/components/polkitAgent.js
js/ui/components/telepathyClient.js
js/ui/dash.js
js/ui/dateMenu.js
js/ui/endSessionDialog.js
js/ui/ibusCandidatePopup.js
js/ui/iconGrid.js
js/ui/keyboard.js
js/ui/layout.js
js/ui/lightbox.js
js/ui/lookingGlass.js
js/ui/magnifier.js
js/ui/messageList.js
js/ui/messageTray.js
js/ui/mpris.js
js/ui/osdMonitorLabeler.js
js/ui/osdWindow.js
js/ui/overview.js
js/ui/overviewControls.js
js/ui/padOsd.js
js/ui/panel.js
js/ui/panelMenu.js
js/ui/screenShield.js
js/ui/screenshot.js
js/ui/search.js
js/ui/shellMountOperation.js
js/ui/status/accessibility.js
js/ui/status/bluetooth.js
js/ui/status/brightness.js
js/ui/status/keyboard.js
js/ui/status/location.js
js/ui/status/network.js
js/ui/status/nightLight.js
js/ui/status/power.js
js/ui/status/remoteAccess.js
js/ui/status/rfkill.js
js/ui/status/screencast.js
js/ui/status/system.js
js/ui/status/thunderbolt.js
js/ui/status/volume.js
js/ui/unlockDialog.js
js/ui/userWidget.js
js/ui/viewSelector.js
js/ui/windowManager.js
js/ui/workspace.js
js/ui/workspaceThumbnail.js
js/ui/workspacesView.js
tests/interactive/calendar.js